<div class="tooltip-container">
  <span class="tooltip">
    <span>
      <svg
        class="tooltip-icon"
        xmlns="http://www.w3.org/2000/svg"
        viewBox="0 0 24 24"
      >
        <defs>
          <linearGradient y2="1" x2="0" id="gradient">
            <stop stop-color="#96a1e8" offset="0%"></stop>
            <stop stop-color="#5061be" offset="100%"></stop>
          </linearGradient>
        </defs>
        <path
          d="M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z"
          fill="url(#gradient)"
        ></path>
      </svg>
    </span>
    <span class="tooltip-lines">
      <span class="tooltip-line-1"></span>
      <span class="tooltip-line-2"></span>
    </span>
  </span>
  <span class="text">
    <span class="tooltip-lines">
      <span class="tooltip-line-1"></span>
      <span class="tooltip-line-2"></span>
    </span>
  </span>
</div>

<style>
/* From Uiverse.io by SelfMadeSystem  - Tags: tooltip, 3d, border */
/* This is very original.
I'm also too lazy to figure out how to add the arrow
without excessive SVG. I know I'm not going to win, so
why not just try to emulate the thing in the image */
.tooltip-container {
  --background: #fefbff;
  --inner-shadow: #9faef9;
  --inner-outline: #34217d;
  --inner-outline-bottom: #fafcfe;
  --inner-outline-middle: #8880d5;
  --inner-outline-outer-top: #fefcff;
  --inner-outline-outer-bottom-1: #29107b;
  --inner-outline-outer-bottom-2: #5b42c4;
  --inner-outline-outer-bottom-3: #200265;
  --line-1: #8676c9;
  --line-2: #5c69ca;
  position: relative;
  background: var(--background);
  cursor: pointer;
  transition: all 0.2s;
  font-size: 17px;
  padding: 0.7em 1.8em;
  border-radius: 5px;
  box-shadow: inset 0px 1px 8px 1px var(--inner-shadow),
    0px 2px 0px 0px var(--inner-outline-bottom),
    0px -2px 0px 0px var(--inner-outline),
    -2px -2px 0px 0px var(--inner-outline),
    2px -2px 0px 0px var(--inner-outline),
    0px 0px 0px 6px var(--inner-outline-middle),
    0px -2px 0px 7px var(--inner-outline-outer-top),
    0px 4px 0px 7px var(--inner-outline-outer-bottom-1);
}

.tooltip-icon {
  display: inline-block;
  vertical-align: top;
  width: 1.5em;
}

.tooltip-icon path {
  stroke-width: 2px;
  stroke: var(--inner-outline);
  stroke-linejoin: round;
}

.tooltip-lines {
  display: flex;
  flex-direction: column;
  gap: 0.4em;
}

.tooltip-line-1 {
  height: 0.2em;
  width: 4em;
  border-radius: 10em;
  display: inline-block;
  background: var(--line-1);
}

.tooltip-line-2 {
  height: 0.2em;
  width: 3em;
  border-radius: 10em;
  display: inline-block;
  background: var(--line-2);
}

.tooltip {
  position: absolute;
  display: flex;
  gap: 0.4em;
  align-items: center;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  padding: 0.6em 0.8em;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s;
  background: var(--background);
  border-radius: 0.7em;

  box-shadow: inset 0px 1px 8px 1px var(--inner-shadow),
    0px 2px 0px 0px var(--inner-outline-bottom),
    0px -2px 0px 0px var(--inner-outline),
    -2px -2px 0px 0px var(--inner-outline),
    2px -2px 0px 0px var(--inner-outline),
    0px 0px 0px 6px var(--inner-outline-middle),
    0px -2px 0px 7px var(--inner-outline-outer-top),
    0px 4px 0px 7px var(--inner-outline-outer-bottom-1),
    0px 7px 0px 7px var(--inner-outline-outer-bottom-2),
    0px 10px 0px 7px var(--inner-outline-outer-bottom-3);
}

/* .tooltip::before {
  content: "";
  position: absolute;
  height: 1em;
  width: 1em;
  bottom: -0.2em;
  left: 50%;
  transform: translate(-50%) translateY(2px) rotate(45deg);
  background: var(--background);
  border-radius: 0.2em;
} */

.tooltip-container:hover .tooltip {
  top: -4.5em;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

</style>
    